<!doctype html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport"
        content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
<script>
  /*
  * 类型转换
  *   数据类型： 定义了7种数据类型
  *
  *     原始类型：Boolean Null Undefined Number String Symbol
  *
  *     对象： Object
  *
  *
  *   显示类型转换（手动执行）
  *     Number函数、String函数、Boolean函数
  *
  *     Number()
  *       原始类型转换:
  *         数值：还是原来的数值
  *         字符串：如果能解析为数值，则转换为数值，否则是NaN， 空字符串是0
  *         布尔值：true 1， false 0
  *         undefined: 转成NaN
  *         null: 转成0
  *
  *       对象类型转换
  *           先调用对象自身的valueOf方法，如果该方法返回原始类型的值（上边就是原始类型），则直接使用Number方法，不再进行后续步骤
  *           如果valueOf()方法返回复合类型的值，再调用对象自身的toString方法，如果toString方法返回原始类型的值，则对该值使用Number方法，不再进行后续步骤
  *           如果toString方法返回的是复合类型的值，则报错
  *
  *   隐式类型转换（程序内部完成）
  *
  * */
</script>
</body>
</html>
